1
Construyendo la base: Interactividad en línea de comandos en Rust
AI034Lesson 2
00:00

El diálogo de la programación

Piensa en la diferencia entre un simple "Hola, mundo!" y un juego de adivinanzas como la diferencia entre un monólogo y un diálogo. En un monólogo, el programa habla y termina. En un diálogo, el programa hace una pregunta, abre un receptor y pausa su reloj interno hasta que el usuario responda.

1. El preludio y el ámbito

Rust importa automáticamente un pequeño conjunto de elementos llamados el preludio en cada programa. Sin embargo, para tareas especializadas como la entrada desde terminal, debemos traer explícitamente el Biblioteca estándar al ámbito usando use std::io;. Esto pone un puente entre la lógica interna de tu programa y el entorno externo.

TerminalSalida estándarPrograma en Rustámbito main()println! (Macro)io::stdin() (Entrada)

2. Macros frente a funciones

Notarás que println! termina con un signo de exclamación. Esto lo identifica como una macro. A diferencia de las funciones regulares, las macros pueden manejar un número variable de argumentos y realizar interpolación de cadenas (rellenando {adivina}) en tiempo de compilación.

3. El ciclo de vida interactivo

Cuando ejecutas cargo run, el programa se inicializa, alcanza io::stdin().read_line(), y suspende. Espera a que el usuario presione 'Enter', luego empaqueta esa entrada en un tipo Resultado para manejar de forma segura posibles fallos del hardware.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>